#pragma once

#include "thread.h"
#include "debugtool.h"

class ThreadPool
{
public:
	int Start();
	int Stop();
	void Add(Thread *thread) { _threads.push_back(thread); }

protected:
	ThreadPool() {}
	virtual  ~ThreadPool();

protected:
	virtual int _Prepare() = 0;
	virtual int _Finish() = 0;

protected:
	std::vector<Thread*> _threads;
};